package tsg.event;

public class KeyEvent extends InputEvent
{
	public static final int PRESSED 	            = 0;
	public static final int RELEASED 	            = 1;
	public static final int TYPED 		            = 2;
	
	public static final int VK_UP     				= -1;
	public static final int VK_DOWN 				= -2;
	public static final int VK_LEFT		    		= -3;
	public static final int VK_RIGHT 		    	= -4;
	
	public static final int VK_CTRL    				= -5;
	public static final int VK_ALT 					= -6;
	public static final int VK_LEFT_SHIFT		    = -7;
	public static final int VK_RIGHT_SHIFT	    	= -8;
	
	public static final int VK_EXCLAMATION_MARK     = '!';
	public static final int VK_AT 				    = '@';
	public static final int VK_NUMBER_SIGN 		    = '#';
	public static final int VK_DOLLAR_SIGN 		    = '$';
	public static final int VK_PERCENT_SIGN 	    = '%';
//	public static final int VK_ 				    = '^';
	public static final int VK_AMPERSAND 		    = '&';
	public static final int VK_ASTERISK			    = '*';
	public static final int VK_OPEN_PARENTHESIS	    = '(';
	public static final int VK_CLOSE_PARENTHESIS 	= ')';
	
	public static final int VK_PERIOD				= '.';
	public static final int VK_QUESTION_MARK		= '?';
	public static final int VK_COMMA				= ',';
	public static final int VK_LESS_THAN			= '<';
	public static final int VK_GREATER_THAN			= '>';
	public static final int VK_FORWARD_SLASH		= '/';
	public static final int VK_SINGLE_QUOTE			= '\'';
	public static final int VK_DOUBLE_QUOTE			= '"';
	public static final int VK_COLON				= ':';
	public static final int VK_SEMI_COLON			= ';';
	public static final int VK_BACK_SLASH			= '\\';
	public static final int VK_PIPE					= '|';
	public static final int VK_MINUS				= '-';
	public static final int VK_UNDER_SCORE			= '_';
	public static final int VK_PLUS					= '+';
	public static final int VK_EQUALS	            = '=';
//	public static final int VK_MINUS	            = '{';
//	public static final int VK_MINUS	            = '}';
//	public static final int VK_MINUS	            = '[';
//	public static final int VK_MINUS	            = ']';
	public static final int VK_TILDE	            = '~';
	public static final int VK_BACK_QUOTE           = '`';
	public static final int VK_RETURN           	= '\n';
	public static final int VK_SPACE           		= ' ';
	
	public static final int VK_0 		            = '0';
	public static final int VK_1 		            = '1';
	public static final int VK_2 		            = '2';
	public static final int VK_3 		            = '3';
	public static final int VK_4 		            = '4';
	public static final int VK_5 		            = '5';
	public static final int VK_6 		            = '6';
	public static final int VK_7 		            = '7';
	public static final int VK_8 		            = '8';
	public static final int VK_9 		            = '9';
	                                                
	public static final int VK_a 		            = 'a';
	public static final int VK_b 		            = 'b';
	public static final int VK_c 		            = 'c';
	public static final int VK_d 		            = 'd';
	public static final int VK_e 		            = 'e';
	public static final int VK_f 		            = 'f';
	public static final int VK_g 		            = 'g';
	public static final int VK_h 		            = 'h';
	public static final int VK_i 		            = 'i';
	public static final int VK_j 		            = 'j';
	public static final int VK_k 		            = 'k';
	public static final int VK_l 		            = 'l';
	public static final int VK_m 		            = 'm';
	public static final int VK_n 		            = 'n';
	public static final int VK_o 		            = 'o';
	public static final int VK_p 		            = 'p';
	public static final int VK_q 		            = 'q';
	public static final int VK_r 		            = 'r';
	public static final int VK_s 		            = 's';
	public static final int VK_t 		            = 't';
	public static final int VK_u 		            = 'u';
	public static final int VK_v 		            = 'v';
	public static final int VK_w 		            = 'w';
	public static final int VK_x 		            = 'x';
	public static final int VK_y 		            = 'y';
	public static final int VK_z 		            = 'z';
	                                                
	public static final int VK_A 		            = 'A';
	public static final int VK_B 		            = 'B';
	public static final int VK_C 		            = 'C';
	public static final int VK_D 		            = 'D';
	public static final int VK_E 		            = 'E';
	public static final int VK_F 		            = 'F';
	public static final int VK_G 		            = 'G';
	public static final int VK_H 		            = 'H';
	public static final int VK_I 		            = 'I';
	public static final int VK_J 		            = 'J';
	public static final int VK_K 		            = 'K';
	public static final int VK_L 		            = 'L';
	public static final int VK_M 		            = 'M';
	public static final int VK_N 		            = 'N';
	public static final int VK_O 		            = 'O';
	public static final int VK_P 		            = 'P';
	public static final int VK_Q 		            = 'Q';
	public static final int VK_R 		            = 'R';
	public static final int VK_S 		            = 'S';
	public static final int VK_T 		            = 'T';
	public static final int VK_U 		            = 'U';
	public static final int VK_V 		            = 'V';
	public static final int VK_W 		            = 'W';
	public static final int VK_X 		            = 'X';
	public static final int VK_Y 		            = 'Y';
	public static final int VK_Z 		            = 'Z';
	

	
	public KeyEvent(Object source) 
	{
		super(source);
	}
	
	public KeyEvent(Object source, int keyCode) 
	{
		super(source);
		this.setKeyCode(keyCode);
	}
	
	public int getKeyCode()
	{
		return _keyCode;
	}
	
	public void setKeyCode(int keyCode)
	{
		_keyCode = keyCode;
	}
	
	private int _keyCode = 0;
}
